Установка скрипта платных подписок для Яндекс.Денег

Введение


Благодарим за покупку скрипта! Установка скриптового решения займет некоторое время. Пожалуйста, внимательно читайте инструкции и старайтесь следовать всем рекомендациям.

Качественный контент требует серьезных затрат (как временных, так, порой, и материальных). Особенно, если над ним работает не один человек, а целый коллектив.
Деньги, полученные от благодарных пользователей, заинтересованных в доступе к такому контенту, могут помочь вам дальше развивать свой сайт и привлекать новую аудиторию.

В данный момент, существует только одно средство для монетизации контента для платформы uCoz - SMS-сервисы. Модуль Yandex.Money Paid Subscriptions призван исправить данную ситуацию и составить достойную конкуренцию SMS-сервисам.

Этот скрипт будет полезен тем пользователям, которые, работая НЕ в формате интернет-магазина, хотят получить извлечь максимальную прибыль из своего сайта и монетизировать его при помощи предоставления платного доступа к контенту.
Суть данного скриптового решения заключается в том, чтобы посредством uAPI делать перенос пользователей, оплативших доступ при помощи Яндекс.Денег или банковской карты, в группу «Платные подписчики».

Функциональные возможности:
  • оплата пользователями доступа к контенту при помощи сервиса "Яндекс.Деньги";
  • оплата пользователями доступа к контенту при помощи банковской карты (для оплаты картой пользователю не обязательно быть зарегистрированным в Яндекс.Деньгах!);
  • статистика оплат (общий подсчет полученных денег; количество платежей за текущий месяц; количество собирающихся заплатить)
  • возможность управления активными платежами (их отключение; включение; удаление).

Доступно для контентных модулей:
  • новости сайта;
  • блог;
  • форум;
  • каталог файлов;
  • каталог статей;
  • каталог сайтов;
  • фотоальбомы;
  • доска объявлений;
  • онлайн-игры;
  • видео.

Требования к установке:
  • активированный PHP;
  • использование uAPI;
  • кошелёк Яндекс.Денег для приёма платежей.


Перед установкой, сделайте полный бэкап шаблонов на случай, если вы в какой-то момент решите вернуть прежний вид сайту или отдельным его элементам.
Сделать это можно в Панели управления » Управление дизайном » Backup шаблонов.

Первый шаг: активация uAPI, PHP и настройка кошелька Яндекс.Денег


Активация uAPI

Этап 1. Активация uAPI для модуля «Пользователи»

Необходимо перейдите в настройки модуля «Пользователи» и напротив пункта «Включить uAPI для модуля» установите галочку, затем прокрутите страницу вниз и сохраните изменения.


Этап 2. Получение токен-доступов для uAPI

Перейдите на страницу http://uapi.ucoz.com/uapi_panel, авторизуйтесь под своим uID-профилем.

После авторизации, вы увидите интерфейс управления uAPI-приложений. Нам нужно создать приложение. Нажмите на «Создать» и введите все те данные, которые запросит форма.
  • В пункте «Название приложения» можно написать свое название (абсолютное любое);
  • В пункте «Consumer key» введите любой набор латинских букв, как например: hFFSJjknfsdgF87T, рекомендуем сгенерировать;
  • В пункте «Consumer secret» оставляем всё как есть;
  • В пункте «Redirect URL» введите ссылку на свой сайт (куда собираетесь подключить скрипт);
  • Нажмите на Сохранить.


Этап 3. Создание токенов

Перейдите на страницу http://api.ucoz.net/ru/join/reg, выберите «Полуавтоматом». Далее вам предложат ввести данные – их вы можете взять со страницы http://uapi.ucoz.com/uapi_panel. Заполните поля, продолжайте следовать инструкциям системы. В результате вы должны получить токены. Пошаговая иллюстрация:







Ура, теперь мы получили токены. Зайдите в директорию PHP-FTP » yamps » config распакованного архива, найдите в ней файл main.php и откройте его в любом текстовом редакторе. Затем пропишите в разделе "uCoz" этого файла значения ключей, которые вы только получили (вместо них там стоят пустые кавычки - значения нужно поместить в них). Также, укажите URL вашего сайта в качестве значения для 'u_site_url' (полностью, с http://).

Настройка кошелька Яндекс.Денег

У вас должен быть зарегистрирован кошелек Яндекс.Денег и его категория должна быть не ниже «Именного»:


В нижней части страницы сервиса Яндекс.Деньги найдите и перейдите по ссылке «Разработчикам» и переходите по ссылкам, на которые указывает стрелка:


В итоге вы попадете на страницу, закрытую кодом безопасности. Нажмите на кнопку «Получить пароль» - он придет на ваш телефон, указанный при регистрации, по SMS. Введите его и нажмите на кнопку «Подтвердить»:


Перед вами появится форма управления HTTP-уведомлениями о поступивших платежах. На ней необходимо выполнить 4 действия:
  • вместо ... в поле ввода адреса http://.../php/yamps/index.php?u=/payment_form_notify указать адрес своего uCoz-сайта;
  • скопировать секрет в блокнот;
  • отметить галочкой поле «Отправлять уведомления»;
  • нажать на кнопку «Сохранить»;


Теперь Яндекс.Деньги смогут оповещать скрипт специальным HTTP-уведомлением при поступлении средств на ваш кошелек!

Помните скопированный в блокнот секрет? Зайдите в директорию PHP-FTP » yamps » config распакованного архива, найдите в ней файл main.php и откройте его в любом текстовом редакторе. Затем пропишите в директиве "yam_notification_secret" раздела "Yandex" скопированный секрет (вместо него там стоят пустые кавычки - значения нужно поместить в них).

Активация PHP

Убедитесь, что на вашем сайте активна услуга PHP. Для этого перейдите на главную страницу панели управления и обратите внимание на правую часть страницы. В случае наличия активной услуги вы увидите текст "PHP детали".
– перейдите к следующему шагу установки, PHP-услуга у вас активна. Если такой текст отсутствует, значит услуга PHP отключена или просрочена. Для подключения PHP необходимо оплатить премиум пакет, включающий возможность использования PHP-скриптов, либо заказать данную услугу отдельно.

Второй шаг: загрузка скриптов на FTP PHP


Этап 1. Установка пароля

Если у вас задан пароль к FTP PHP, сразу же переходите к следующему этапу.

Перейдите на главную страницу панели управления вашим сайтом, в правой верхней части нажмите на ссылку «PHP детали».
В открывшемся окне кликните на ссылку: «Пароль не установлен.
Мы попадем на страницу установки пароля на FTP PHP. Заполните поля, продолжайте следовать инструкциям системы.

Этап 2. Подключение к PHP FTP серверу

После установки пароля, скачайте FTP-клиент, рекомендуем бесплатный FTP клиент FileZilla. После установки программы, в верхней части вводим параметры подключения:

  • Сервер: s2000.ucoz.net
  • Логин (FTP login): введите свой логин, который указан в меню "PHP детали"
  • Пароль: пароль который вы ввели ранее в специальном разделе

После заполнения полей нажмите на кнопку «Быстрое соединение».


Этап 3. Загрузка скриптов на PHP FTP сервер

После успешного подключения вы увидите каталог под именем «scripts» в правой части окна программы. Обязательно переходим в этот каталог двойным кликом по нему.

Теперь загрузите в него директорию «yamps» из каталога «PHP-FTP» распакованного архива. Загрузить легко - просто перетащите эту папку в правый диалог (где отображаются каталоги и файлы хранящиеся на сервере).

Аналогичные действия необходимо проделать и для загрузки на сервер директории «yamps» из каталога «FTP» распакованного архива. Следуйте ниже инструкции.
Перейдите в Панель управления » Файловый менеджер.
В правом верхнем углу кликните на кнопку "Создать папку", введите название папки yamps.
Кликните на галочку и ура, мы создали папку с нужным именем!:) Теперь перейдите в созданную папку yamps и загрузите в неё все файлы, которые находятся в архиве со скриптом, в папке "FTP".

Третий шаг: настройка пользовательских групп


Настройка групп «Гости» и «Пользователи».

Для ограничения доступа к монетизируемым материалам/модулям для пользователей не оплативших доступ необходимо выполнить следующее:

Перейдите на страницу Пользователи » Группы пользователей панели управления вашим uCoz-сайтом. Там вы увидите список всех пользователеских групп. Например, вы хотите монетизировать материалы модулей «Дневник» и «Новости сайта». Необходимо снять все галочки доступности к материалам этих модулей для указанных стрелками групп:


Не забудьте нажать на кнопку «Сохранить» внизу страницы.

Теперь необходимо создать группу «Платные подписчики»:
  • кликните по ссылке «Создать новую группу»
  • введите название создаваемой группы
  • отметьте галочками права доступности для материалов монетизируемых модулей
  • нажмите на кнопку «Сохранить» внизу страницы



После сохранения настроек, вы попадете на список всех групп. Скопируйте ID только что созданной групп в блокнот:

Четвертый шаг: создание глобального блока и установка кода


Этап 1. Создание глобального блока YAMPS

Перейдите на страницу «Управление дизайном» панели управления вашим uCoz-сайтом. На этой странице кликните по ссылке «Глобальные блоки»:


Далее, выполните несколько действий:
  • кликните по кнопке «Добавить блок»
  • в поле названия блока введите YAMPS и нажмите кнопку «Добавить»
  • вставьте в редактор следующий код, заменив 'ID_ГРУППЫ_ПЛАТНЫХ_ПОЛЬЗОВАТЕЛЕЙ' на скопированный ранее ID группы «Платные пользователи»:
    <link rel="stylesheet" href="/yamps/css/bootstrap.min.css" />
    <link rel="stylesheet" href="/yamps/css/alertify.core.css" />
    <link rel="stylesheet" href="/yamps/css/alertify.default.css" />
    <link rel="stylesheet" href="/yamps/css/yamps.css" />
    <script src="/yamps/js/bootstrap.min.js"></script>
    <script src="/yamps/js/alertify.min.js"></script>
    <script src="/yamps/js/yamps-common.js"></script>
    <? if($USER_LOGGED_IN$ && $GROUP_ID$ == 4) ?>
    <script src="/yamps/js/yamps-settings.js"></script>
    <? endif ?>
    <? if($USER_LOGGED_IN$ && $GROUP_ID$ != 4 && $GROUP_ID$ != 'ID_ГРУППЫ_ПЛАТНЫХ_ПОЛЬЗОВАТЕЛЕЙ') ?>
    <script src="/yamps/js/yamps-form.js"></script>
    <? endif ?>
    
  • нажмите кнопку «Сохранить» - блок появится в списке «Глобальные блоки»


Для вставки этого блока на все страницы сайта кликните на странице управления дизайнами по ссылке «Нижняя часть сайта», вставьте переменную созданного выше блока $GLOBAL_YAMPS$ после всего кода в редакторе и нажмите на кнопку «Сохранить»:


Этап 2. Установка кода формы оплаты на странице «Доступ запрещен»

Не уходя со страницы управления дизайнами кликните по ссылке Страница «Доступ запрещен»:


Замените код условия $USER_LOGGED_IN$ на следующий код:
<?if($USER_LOGGED_IN$)?>
<div id="yampsPlaceholder" data-user-id="$USER_ID$"></div>
<?endif?>
Нажмите на кнопку «Сохранить»:

Пятый шаг: установка, настройка и использование модуля


Этап 1. Установка и настройка.

Если на предыдущих шагах вы все сделали правильно, то войдя под администратором сайта, в середине верхней панели вы должны видеть ссылку «Yamps»:


Для установки модуля необходимо:
  • кликнуть по этой кнопке
  • нажать на кнопку «Установить модуль»
  • раскрыть список пункт «Настройки платежей» и ввести актуальные данные:
    • номер кошелька можно узнать на главной странице Яндекс.Денег
    • идентификатор платной группы вы должны были скопировать в блокнот
    • ... в поле URL необходимо заменить на адрес вашего uCoz-сайта
  • нажать на кнопку «Сохранить»


Этап 2. Использование модуля

Пользователи, выполнившие вход и попавшие на страницу «Доступ запрещен», будут видеть форму оплаты:


Администратор, в свою очередь, теперь будет видеть:
  • общее количество платежей;
  • количество платежей за текущий месяц;
  • количество человек, открывавших форму оплаты, но не заплативших.


Также, администратор, сможет управлять:
  • активными платежами (отключать их);
  • деактивированными платежами (включать их обратно или удалять насовсем);


Этап 3. Кастомизация модуля

Возможно, вы сами захотите кастомизировать какие-то части модуля. Ниже дана структура файлов модуля с комментариям.

PHP-часть
  • /yamps – корневая директория модуля
    • ./config – директория с файлами конфигурации
      • ./main.php – главный файл конфигурации
    • ./framework – директория с фреймворком Limonade (Крайне не рекомендуется редактировать её содержимое!)
    • ./lib – директория с файлами вспомогательных библиотек (Крайне не рекомендуется редактировать её содержимое!)
    • ./sql – директория с инсталляционными файлами для БД модуля (Крайне не рекомендуется редактировать её содержимое!)
    • ./views – директория с файлами шаблонов для форм/страниц модуля
      • ./layouts – директория с html-обвязкой для страниц
        • main.html.php – html-обвязка для страниц успешной/неуспешной оплат
      • form.html.php – шаблон формы оплаты
      • install.html.php – шаблон формы инсталляции
      • payment_status.html.php – шаблон страниц успешной/неуспешной оплат
      • settings.html.php – шаблон формы настроек
      • stat_details_disabled.html.php – шаблон списка отключенных оплат
      • stat_details_prepared.html.php – шаблон списка приготовившихся заплатить
    • ./index.php – главный файл модуля (Крайне не рекомендуется его редактировать!)
    • ./install.lock – файл подтверждения инсталляции модуля (Крайне не рекомендуется его редактировать!)
    • ./transactions.log – файл с логом транзакций оплат
    • ./yandex_paid.sqlite – файл с БД модуля (Крайне не рекомендуется его редактировать!)

Данный модуль использует фреймворк Bootstrap и библиотеку для всплывающих уведомлений alertify.
JS/CSS-часть
  • /yamps – корневая директория модуля
    • ./css – директория с CSS-файлами
      • ./alertify.core.css – корневой файл стилей библиотеки alertify
      • ./alertify.default.css – файл темы по умолчанию библиотеки alertify
      • ./bootstrap.min.css – корневой файл стилей фреймворка Bootstrap
      • ./bootstrap-theme.min.css – файл темы по умолчанию фреймворка Bootstrap
      • ./yamps.css – файл стилей модуля, внутри файл разбит на блоки; блоки прокомментированы; селекторы имеют семантические имена, так что сопоставить их с разметкой не составит труда
    • ./fonts – директория с шрифтами
    • ./img – директория с изображениями
    • ./js - директория с JS-файлами
      • ./alertify.min.js – корневой JS-файл библиотеки alertify
      • ./bootstrap.min.js – корневой JS-файл фреймворка Bootstrap
      • ./yamps-common.js – корневой JS-файл модуля (Крайне не рекомендуется его редактировать!)
      • ./yamps-form.js – JS-файл, отвечающий за форму оплаты и заглушку для страницы «Доступ запрещен», её разметку можно править в нём
      • ./yamps-settings.js – JS-файл, отвечающий за форму инсталляции и настроек модуля


Установка завершена. Если у вас возникли вопросы, которые не затрагивались в документации, спрашивайте в комментариях к товару.